﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using WebServiceMGI;
using System.ServiceModel;
namespace WebServiceMGIDeploy
{
    public partial class WebServiceMGI : ServiceBase
    {

        ServiceHost _shIncidentesWS = null;
        ServiceHost _shClientesSistemasWS = null;
        ServiceHost _shUsuariosWS = null;

        public WebServiceMGI()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            Trace.WriteLine("Inciando MGI...");
            _shIncidentesWS = new ServiceHost(typeof(MGIIncidentesWS));
            _shClientesSistemasWS = new ServiceHost(typeof(MGIClientesSistemasWS));
            _shUsuariosWS = new ServiceHost(typeof(MGIUsuariosWS));

            _shIncidentesWS.Open();
            _shClientesSistemasWS.Open();
            _shUsuariosWS.Open();
        }

        protected override void OnStop()
        {
            Trace.WriteLine("Cerrando MGI...");
            if (_shIncidentesWS != null)
            {
                _shIncidentesWS.Close();
                _shIncidentesWS = null;
            }

            if (_shClientesSistemasWS != null)
            {
                _shClientesSistemasWS.Close();
                _shClientesSistemasWS = null;
            }

            if (_shUsuariosWS != null)
            {
                _shUsuariosWS.Close();
                _shUsuariosWS = null;
            }
        }
    }
}
